home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1999 March / EnigmA AMIGA RUN 35 (1999)(G.R. Edizioni)(IT)[!][issue 1999-03].iso / earcd / utils / xad / developer / sources / test / testxaddate.c next >
C/C++ Source or Header  |  1999-01-01  |  2KB  |  76 lines

  1. #include <proto/xadmaster.h>
  2. #include <proto/exec.h>
  3. #include <proto/dos.h>
  4.  
  5. struct xadMasterBase *xadMasterBase;
  6.  
  7. void dotest(ULONG a, ULONG b, ULONG c)
  8. {
  9.   struct xadDate xd;
  10.   struct TagItem ti[] = {XAD_DATEXADDATE, (ULONG) &xd, XAD_GETDATEXADDATE, (ULONG) &xd, TAG_DONE, 0};
  11.  
  12.   xd.xd_Micros = 0;
  13.   xd.xd_Year = c;
  14.   xd.xd_Month = b;
  15.   xd.xd_Day = a;
  16.   xd.xd_WeekDay = 0;
  17.   xd.xd_Hour = 0;
  18.   xd.xd_Minute = 0;
  19.   xd.xd_Second = 0;
  20.  
  21.   if((xadConvertDatesA(ti)))
  22.     Printf("err\n");
  23.   else
  24.     Printf("%ld.%ld.%ld - %ld.%ld.%ld - %ld\n", a, b, c, xd.xd_Day,
  25.   xd.xd_Month, xd.xd_Year, xd.xd_WeekDay);
  26. }
  27.  
  28. void dotest2(ULONG tag, ULONG a, ULONG tr)
  29. {
  30.   struct xadDate xd;
  31.   ULONG i, f;
  32.   struct TagItem ti[] = {tag, a, XAD_MAKELOCALDATE, tr, XAD_GETDATEXADDATE,
  33.       (ULONG) &xd, TAG_DONE, 0};
  34.   struct TagItem ti2[] = {XAD_GETDATEUNIX, (ULONG) &i, XAD_MAKEGMTDATE, tr,
  35.       XAD_DATEXADDATE, (ULONG) &xd, TAG_DONE, 0};
  36.   struct TagItem ti3[] = {XAD_GETDATEAMIGA, (ULONG) &f, XAD_DATEXADDATE,
  37.       (ULONG) &xd, TAG_DONE, 0};
  38.  
  39.   if((xadConvertDatesA(ti)))
  40.     Printf("err\n");
  41.   else if((xadConvertDatesA(ti2)))
  42.     Printf("err3\n");
  43.   else if((xadConvertDatesA(ti3)))
  44.     Printf("err4\n");
  45.   else
  46.     Printf("%08lx - %08lx - %08lx - %ld.%ld.%ld - %ld - %02ld:%02ld:%02ld\n", a, i, f, 
  47.   xd.xd_Day, xd.xd_Month, xd.xd_Year, xd.xd_WeekDay, xd.xd_Hour,
  48.   xd.xd_Minute, xd.xd_Second);
  49. }
  50.  
  51. void main(void)
  52. {
  53.   if((xadMasterBase = (struct xadMasterBase *)
  54.   OpenLibrary("xadmaster.library", 1)))
  55.   {
  56.     struct DateStamp d = {0x1E13, 0x50C, 0x10C};
  57.  
  58.     dotest(1,1,1);
  59.     dotest(1,1,1700);
  60.     dotest(1,1,1970);
  61.     dotest(1,1,1978);
  62.     dotest2(XAD_DATEUNIX,0x00000000,1);
  63.     dotest2(XAD_DATEUNIX,0x01E13380,1);
  64.     dotest2(XAD_DATEUNIX,0x7FFFFFFF,1);
  65.     dotest2(XAD_DATEUNIX,0xFFFFFFFF,1);
  66.     dotest2(XAD_DATEAMIGA,0x00000000,0);
  67.     dotest2(XAD_DATEAMIGA,0x7FFFFFFF,0);
  68.     dotest2(XAD_DATEAMIGA,0xFFFFFFFF,0);
  69.     dotest2(XAD_DATEDATESTAMP,(ULONG) &d,0);
  70.  
  71.     CloseLibrary((struct Library *) xadMasterBase);
  72.   }
  73.   else
  74.     Printf("err2\n");
  75. }
  76.